#
# Industrial I/O subsystem configuration
#

menuconfig IIO
	tristate "Industrial I/O support"
	select ANON_INODES
	help
	  The industrial I/O subsystem provides a unified framework for
	  drivers for many different types of embedded sensors using a
	  number of different physical interfaces (i2c, spi, etc).

if IIO

config IIO_BUFFER
	bool "Enable buffer support within IIO"
	help
	  Provide core support for various buffer based data
	  acquisition methods.

if IIO_BUFFER

config IIO_BUFFER_CB
	bool "IIO callback buffer used for push in-kernel interfaces"
	help
	  Should be selected by any drivers that do in-kernel push
	  usage.  That is, those where the data is pushed to the consumer.

config IIO_KFIFO_BUF
	tristate "Industrial I/O buffering based on kfifo"
	help
	  A simple fifo based on kfifo.  Note that this currently provides
	  no buffer events so it is up to userspace to work out how
	  often to read from the buffer.

config IIO_TRIGGERED_BUFFER
	tristate
	select IIO_TRIGGER
	select IIO_KFIFO_BUF
	help
	  Provides helper functions for setting up triggered buffers.

endif # IIO_BUFFER

config IIO_TRIGGER
	bool "Enable triggered sampling support"
	help
	  Provides IIO core support for triggers.  Currently these
	  are used to initialize capture of samples to push into
	  buffers.  The triggers are effectively a 'capture
	  data now' interrupt.

config IIO_CONSUMERS_PER_TRIGGER
       int "Maximum number of consumers per trigger"
       depends on IIO_TRIGGER
       default "2"
       help
	This value controls the maximum number of consumers that a
	given trigger may handle. Default is 2.

source "drivers/iio/accel/Kconfig"
source "drivers/iio/adc/Kconfig"
source "drivers/iio/amplifiers/Kconfig"
source "drivers/iio/common/Kconfig"
source "drivers/iio/dac/Kconfig"
source "drivers/iio/frequency/Kconfig"
source "drivers/iio/gyro/Kconfig"
source "drivers/iio/humidity/Kconfig"
source "drivers/iio/imu/Kconfig"
source "drivers/iio/light/Kconfig"
source "drivers/iio/magnetometer/Kconfig"
source "drivers/iio/orientation/Kconfig"
if IIO_TRIGGER
   source "drivers/iio/trigger/Kconfig"
endif #IIO_TRIGGER
source "drivers/iio/pressure/Kconfig"
source "drivers/iio/proximity/Kconfig"
source "drivers/iio/temperature/Kconfig"

endif # IIO
